package com.anjubao.parking.municipal.parkinglot.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 设备日志入参
 *
 * @author anjubao
 */
@ApiModel(value = "DeviceLogDto", description = "设备日志信息")
@Data
@ToString
public class DeviceLogDto implements Serializable {

    /**
     * 日志id
     */
    private Long id;

    /**
     * token
     */
    private String token;

    /**
     * 重发标记 0:正常,1:重发
     */
    private Integer resend;

    /**
     * 设备id
     */
    private Long deviceId;

    /**
     * 设备code
     */
    private String deviceCode;

    /**
     * 设备类型 1:充电桩,2:视频桩,3:地磁,4:pda,5:诱导屏
     */
    private Integer deviceType;

    /**
     * 设备名称
     */
    private String deviceName;

    /**
     * 变化状态 0:无车,1:有车
     */
    private Integer usedStatus;

    /**
     * 状态 0:故障,1:正常
     */
    private Integer status;

    /**
     * 运行状态 0:断线,1:在线
     */
    private Integer isOnline;

    /**
     * 剩余电量
     */
    private Integer remainingBattery;

    /**
     * 停车场停车位ID
     */
    private Long parkingLotSlotId;

    /**
     * 停车场停车位编号
     */
    private String parkingLotSlotCode;

    /**
     * 停车场停车位名称
     */
    private String parkingLotSlotName;

    /**
     * 地址
     */
    private String location;

    /**
     * 备注
     */
    private String note;

    /**
     * 事件ID
     */
    private String eventId;

    /**
     * 事件信息
     */
    private String eventInfo;

    /**
     * 事件级别 1:一般,2:严重
     */
    private Integer eventLevel;

    /**
     * 事件时间
     */
    private LocalDateTime eventTime;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 停车场所在省份ID
     */
    @ApiModelProperty(value="停车场所在省份ID")
    private Integer parkingLotProvinceId;

    /**
     * 停车场所在省份名称
     */
    @ApiModelProperty(value="停车场所在省份名称")
    private String parkingLotProvinceName;

    /**
     * 停车场所在城市ID
     */
    @ApiModelProperty(value="停车场所在城市ID")
    private Integer parkingLotCityId;

    /**
     * 停车场所在城市名称
     */
    @ApiModelProperty(value="停车场所在城市名称")
    private String parkingLotCityName;

    /**
     * 停车场所在区域ID
     */
    @ApiModelProperty(value="停车场所在区域ID")
    private Integer parkingLotDistrictId;

    /**
     * 停车场所在区域名称
     */
    @ApiModelProperty(value="停车场所在区域名称")
    private String parkingLotDistrictName;

    /**
     * 停车场名称
     */
    @ApiModelProperty(value="停车场名称")
    private String parkingLotName;

    /**
     * 停车场id
     */
    @ApiModelProperty(value="停车场id")
    private Long parkingLotId;

    /**
     * 停车场code
     */
    @ApiModelProperty(value="停车场code")
    private String parkingLotCode;

}
